<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 什么是 promise ?
        // es6 解决编写顺序和执行顺序不一致的统一方案
        // callback 回调有缺点
        const weather = new Promise((resolve,reject) => {
            setTimeout(() => {
                resolve({temp:29,condition:'Sunny with Cloud'});
            },5000)
        });
        const tweets = new Promise((resolve,reject) => {
            setTimeout(() => {
                resolve(['I like you','BBQ is good tool'])
            },3000)
        });

        // weather
        //     .then((data) =>{
        //         // 拿到了天气
        //         console.log(data);
        //         // 又返回了一个 promise
        //         return tweets
        //     })
        //     .then((data) => {
        //         // tweets
        //         console.log(data);
        //     })jt
        Promise
            .all([weather,tweets]) // 静态的 state  所有都执行完了
            .then(response => {
                // console.log(response);
                // 顺序保持跟参数顺序一致
                const [weatherinfo,tweetsinfo] = response;
                console.log(weatherinfo,tweetsinfo);
            })

        // tweets
        //     .then((data) => {
        //         // tweets
        //         console.log(data);
        //     })
    </script>
</body>
</html>